." Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
."
." This code is free software; you can redistribute it and/or modify it
." under the terms of the GNU General Public License version 2 only, as
." published by the Free Software Foundation.
."
." This code is distributed in the hope that it will be useful, but WITHOUT
." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
." version 2 for more details (a copy is included in the LICENSE file that
." accompanied this code).
."
." You should have received a copy of the GNU General Public License version
." 2 along with this work; if not, write to the Free Software Foundation,
." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
."
." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
." or visit www.oracle.com if you need additional information or have any
." questions.
."
.TH jmap 1 "16 Mar 2012"

.LP
.SH "Name"
jmap \- Memory Map
.LP
.SH "SYNOPSIS"
.LP
.nf
\f3
.fl
\fP\f3jmap\fP [ option ] pid
.fl
\f3jmap\fP [ option ] executable core
.fl
\f3jmap\fP [ option ] [server\-id@]remote\-hostname\-or\-IP
.fl
.fi

.LP
.SH "PARAMETERS"
.LP
.RS 3
.TP 3
option 
Options are mutually exclusive. Option, if used, should follow immediately after the command name. 
.TP 3
pid 
process id for which the memory map is to be printed. The process must be a Java process. To get a list of Java processes running on a machine, jps(1) may be used. 
.br
.TP 3
executable 
Java executable from which the core dump was produced. 
.br
.TP 3
core 
core file for which the memory map is to be printed. 
.br
.TP 3
remote\-hostname\-or\-IP 
remote debug server's (see jsadebugd(1)) hostname or IP address. 
.br
.TP 3
server\-id 
optional unique id, if multiple debug servers are running on the same remote host.
.br
.RE

.LP
.SH "DESCRIPTION"
.LP
.LP
\f3jmap\fP prints shared object memory maps or heap memory details of a given process or core file or a remote debug server. If the given process is running on a 64\-bit VM, you may need to specify the \f2\-J\-d64\fP option, e.g.:
.LP
.nf
\f3
.fl
jmap \-J\-d64 \-heap pid
.fl
\fP
.fi

.LP
.LP
\f3NOTE: This utility is unsupported and may or may not be available in future versions of the JDK. In Windows Systems where dbgeng.dll is not present, 'Debugging Tools For Windows' needs to be installed to have these tools working. Also, \fP\f4PATH\fP\f3 environment variable should contain the location of \fP\f4jvm.dll\fP\f3 used by the target process or the location from which the Crash Dump file was produced.\fP
.LP
.LP
\f3For example, \fP\f4set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP
.LP
.br

.LP
.SH "OPTIONS"
.LP
.RS 3
.TP 3
<no option> 
When no option is used jmap prints shared object mappings. For each shared object loaded in the target VM, start address, the size of the mapping, and the full path of the shared object file are printed. This is similar to the Solaris \f3pmap\fP utility. 
.br
.TP 3
\-dump:[live,]format=b,file=<filename> 
Dumps the Java heap in hprof binary format to filename. The \f2live\fP suboption is optional. If specified, only the live objects in the heap are dumped. To browse the heap dump, you can use jhat(1) (Java Heap Analysis Tool) to read the generated file. 
.br
.TP 3
\-finalizerinfo 
Prints information on objects awaiting finalization. 
.br
.TP 3
\-heap 
Prints a heap summary. GC algorithm used, heap configuration and generation wise heap usage are printed. 
.br
.TP 3
\-histo[:live] 
Prints a histogram of the heap. For each Java class, number of objects, memory size in bytes, and fully qualified class names are printed. VM internal class names are printed with '*' prefix. If the \f2live\fP suboption is specified, only live objects are counted. 
.br
.TP 3
\-permstat 
Prints class loader wise statistics of permanent generation of Java heap. For each class loader, its name, liveness, address, parent class loader, and the number and size of classes it has loaded are printed. In addition, the number and size of interned Strings are printed. 
.br
.TP 3
\-F 
Force. Use with jmap \-dump or jmap \-histo option if the pid does not respond. The \f2live\fP suboption is not supported in this mode. 
.br
.TP 3
\-h 
Prints a help message.
.br
.br
.TP 3
\-help 
Prints a help message.
.br
.br
.TP 3
\-J<flag> 
Passes <flag> to the Java virtual machine on which jmap is run. 
.br
.RE

.LP
.SH "SEE ALSO"
.LP
.RS 3
.TP 2
o
pmap(1) 
.TP 2
o
jhat(1) 
.TP 2
o
jps(1) 
.TP 2
o
jsadebugd(1) 
.RE

.LP
 
